<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Cosmos.Sys</name>
    </assembly>
    <members>
        <member name="T:Cosmos.Sys.Network.DataReceived">
            <summary>
            Data Received function delegate for UDP protocol
            </summary>
            <param name="source"><see cref="T:Cosmos.Sys.Network.IPv4EndPoint"/>Endpoint that data was received from</param>
            <param name="data">Data received in the packet</param>
        </member>
        <member name="T:Cosmos.Sys.Network.ClientConnected">
            <summary>
            New TCP Client connection delegate
            </summary>
            <param name="client">Instance of the <see cref="T:Cosmos.Sys.Network.TcpClient"/> that represents the connection</param>
        </member>
        <member name="T:Cosmos.Sys.Network.ClientDataReceived">
            <summary>
            TCP Client Data Received delegate
            </summary>
            <param name="client"><see cref="T:Cosmos.Sys.Network.TcpClient"/> instance that data was received on</param>
            <param name="data">Byte buffer of the received data</param>
        </member>
        <member name="T:Cosmos.Sys.Network.ClientDisconnected">
            <summary>
            TCP Client disconnection delegate
            </summary>
            <param name="client">Instance of the <see cref="T:Cosmos.Sys.Network.TcpClient"/> that represents the connection</param>
        </member>
        <member name="T:Cosmos.Sys.Network.TCPIPStack">
            <summary>
            Implements a TCP/IP Stack on top of Cosmos
            </summary>
        </member>
        <member name="M:Cosmos.Sys.Network.TCPIPStack.Init">
            <summary>
            Initialize the TCP/IP Stack variables
            </summary>
        </member>
        <member name="M:Cosmos.Sys.Network.TCPIPStack.ConfigIP(Cosmos.Hardware.Network.NetworkDevice,Cosmos.Sys.Network.IPv4Config)">
            <summary>
            Configure the IP address setup for a given network card
            </summary>
            <param name="nic">Network Device to configure</param>
            <param name="config">Configuration</param>
        </member>
        <member name="M:Cosmos.Sys.Network.TCPIPStack.Update">
            <summary>
            This function must be called repeatedly to keep the TCP/IP Stack going.
            <remarks>Will later be called by a background thread in the kernel</remarks>
            </summary>
        </member>
        <member name="M:Cosmos.Sys.Network.TCPIPStack.Ping(Cosmos.Sys.Network.IPv4Address)">
            <summary>
            Can be used to test pinging to a network address from Cosmos
            </summary>
            <param name="dest">IP Address of destination</param>
        </member>
        <member name="M:Cosmos.Sys.Network.TCPIPStack.SubscribeUDPPort(System.UInt16,Cosmos.Sys.Network.DataReceived)">
            <summary>
            Subscribe to a UDP port to listen to data received on a specific port number
            <remarks>Only one listener allowed</remarks>
            </summary>
            <param name="port">Port number to listen on</param>
            <param name="callback"><see cref="T:Cosmos.Sys.Network.DataReceived"/> delegate to call when data is received</param>
        </member>
        <member name="M:Cosmos.Sys.Network.TCPIPStack.UnsubscribeUDPPort(System.UInt16)">
            <summary>
            Unsubscribe from existing subscription to a UDP port
            </summary>
            <param name="port">Port number to unsubscribe from</param>
        </member>
        <member name="M:Cosmos.Sys.Network.TCPIPStack.SendUDP(Cosmos.Sys.Network.IPv4Address,System.UInt16,System.UInt16,System.Byte[])">
            <summary>
            Send a UDP packet to a destination device
            </summary>
            <param name="dest">IP address of destination</param>
            <param name="srcPort">Source port</param>
            <param name="destPort">Destination port to send data to</param>
            <param name="data">Data to be sent</param>
        </member>
        <member name="M:Cosmos.Sys.Network.TCPIPStack.AddTcpListener(System.UInt16,Cosmos.Sys.Network.ClientConnected)">
            <summary>
            Add a TCP listener to the specified port
            </summary>
            <param name="port">Port number to listen on</param>
            <param name="connectCallback">Callback function that is called when a new client connects</param>
        </member>
        <member name="M:Cosmos.Sys.VFSManager.GetDirectoryEntry(System.String)">
            <summary>
            Get a single directory from the given path.
            </summary>
            <param name="aPath">Absolute path</param>
            <returns></returns>
        </member>
        <member name="M:Cosmos.Sys.VFSManager.GetDirectoryListing(System.String)">
            <summary>
            Retrieves an array of FilesystemEntries (i.e. Directories and Files) in the gives Directory path.
            </summary>
            <param name="aPath">Directory to search in. Can be absolute and relative.</param>
            <returns>All Directories and Files in the given path.</returns>
        </member>
        <member name="M:Cosmos.Sys.VFSManager.GetVolumeEntry(System.Int32)">
            <summary>
            Get a single volume
            </summary>
        </member>
        <member name="M:Cosmos.Sys.VFSManager.GetDirectoryListing(Cosmos.Sys.FileSystem.FilesystemEntry)">
            <summary>
            Retrieves all files and directories in the given directory entry.
            </summary>
            <param name="aDirectory">Must be a Directory entry.</param>
            <returns></returns>
        </member>
        <member name="M:Cosmos.Sys.VFSManager.GetFileSystemFromPath(System.Int32)">
            <summary>
            Retrieves the drive filesystem from the drivenumber in the path.
            </summary>
            <param name="aPath">The posistion of the drive number in the path.</param>
            <returns>A filesystem</returns>
        </member>
        <member name="M:Cosmos.Sys.VFSManager.DirectoryExists(System.String)">
            <summary>
            Checks if the given directory exists on disk.
            </summary>
            <param name="aDir">Can be both relative and absolute path.</param>
            <returns></returns>
        </member>
        <member name="M:Cosmos.Sys.VFSManager.GetFileEntry(System.String)">
            <summary>
            Retrieve a specific file with the given path.
            </summary>
            <param name="aFile"></param>
            <returns></returns>
        </member>
        <member name="M:Cosmos.Sys.VFSManager.GetFiles(System.String)">
            <summary>
            Get all the files in the given directory.
            </summary>
            <param name="aDir"></param>
            <returns></returns>
        </member>
        <member name="M:Cosmos.Sys.VFSManager.GetFiles(Cosmos.Sys.FileSystem.FilesystemEntry)">
            <summary>
            Get the files in the given Directory entry
            </summary>
            <param name="aDir">Must be a Directory</param>
            <returns></returns>
        </member>
        <member name="M:Cosmos.Sys.VFSManager.GetLogicalDrives">
            <summary>
            Get the logical drives found. Formatted as 1:\
            </summary>
            <returns></returns>
        </member>
        <member name="M:Cosmos.Sys.Network.Packet.Initialize(System.Byte[],System.Int32)">
            <summary>
            Initializes the Packet with some data and sets a size for the header. This is used to determine the size of the bytearray.
            </summary>
            <param name="aData">A bytearray used to initialize the size of the packet.</param>
            <param name="aHeaderSize">Used to determine the difference between the header and the body.</param>
            <returns>Always 0</returns>
        </member>
        <member name="M:Cosmos.Sys.Network.Packet.Conclude">
            <summary>
            Concludes the Packet
            </summary>
        </member>
        <member name="M:Cosmos.Sys.Network.IP4Packet.Initialize(System.Byte[],System.Int32,System.Byte,System.UInt32,System.UInt32)">
            <summary>
            Initialized the IPv4 packet.
            </summary>
            <param name="aData"></param>
            <param name="aHeaderSize"></param>
            <param name="aProtocol"></param>
            <param name="aSrcAddr"></param>
            <param name="aDestAddr"></param>
            <returns></returns>
        </member>
        <member name="M:Cosmos.Sys.Network.IP4Packet.Conclude">
            <summary>
            Concludes the IP4Packet by setting checksum, etc.
            </summary>
        </member>
        <member name="M:Cosmos.Sys.Network.IP4Packet.SetChecksum">
            <summary>
            Calculates and saves the checksum for the IPv4 packet.
            </summary>
        </member>
        <member name="M:Cosmos.Sys.Network.ICMPPacket.Conclude">
            <summary>
            Concludes the ICMP Packet by setting checksum, etc.
            </summary>
        </member>
        <member name="M:Cosmos.Sys.Network.ICMPPacket.SetChecksum">
            <summary>
            Calculates and saves the checksum for the ICMP packet
            </summary>
        </member>
        <member name="T:Cosmos.Sys.Network.TcpClient">
            <summary>
            Represents an established TCP connection between this host and another
            </summary>
        </member>
        <member name="M:Cosmos.Sys.Network.TcpClient.SendString(System.String)">
            <summary>
            Send a string to the remote host
            </summary>
            <param name="data">String to be sent</param>
        </member>
        <member name="M:Cosmos.Sys.Network.TcpClient.SendData(System.Byte[])">
            <summary>
            Send a raw byte buffer to the remote host
            </summary>
            <param name="data">Byte buffer with data to send</param>
        </member>
        <member name="M:Cosmos.Sys.Network.TcpClient.Close">
            <summary>
            Close down an active connection
            </summary>
        </member>
        <member name="P:Cosmos.Sys.Network.TcpClient.DataReceived">
            <summary>
            Data Received callback function
            </summary>
        </member>
        <member name="P:Cosmos.Sys.Network.TcpClient.Disconnect">
            <summary>
            Data Received callback function
            </summary>
        </member>
        <member name="P:Cosmos.Sys.Network.TcpClient.RemoteEndpoint">
            <summary>
            Remote IP Endpoint
            </summary>
        </member>
        <member name="P:Cosmos.Sys.Network.TcpClient.LocalEndpoint">
            <summary>
            Local IP Endpoint
            </summary>
        </member>
        <member name="P:Cosmos.Sys.Network.TcpClient.Connected">
            <summary>
            Returns true if the current connection is active
            </summary>
        </member>
        <member name="T:Cosmos.Sys.Boot">
            <summary>
            Boot configurations for Cosmos.
            One of these configurations should be called from the first line of any Cosmos-based operating system.
            For now we just have default, but can add others in the future.
            </summary>
        </member>
        <member name="M:Cosmos.Sys.Boot.Execute(System.Boolean)">
            <summary>
            Boot the kernel using default boot-configuration.
            Initializes basic hardware like CPU, serialports, PCI, Keyboard and blockdevices.
            Later properties will be added, which will alter this. 
            However if no properties are changed from defaults, and Execute is called it should
            perform a default boot.
            </summary>
        </member>
    </members>
</doc>
